package com.ywu.application.standard.wiki.data;

import com.ywu.application.standard.wiki.dto.YwuWikiProjectDto;
import com.ywu.application.standard.wiki.entity.YwuWikiProjectAndDocEntity;
import com.ywu.application.standard.wiki.entity.YwuWikiProjectEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.ArrayList;
import java.util.List;

@Mapper
public interface YwuWikiProjectRepository {
    YwuWikiProjectEntity getYwuWikiProjectEntity(@Param("model") YwuWikiProjectEntity ywuWikiProjectEntity);

    void insertYwuWikiProject(@Param("model") YwuWikiProjectEntity ywuWikiProjectEntity);

    void updateYwuWikiProject(@Param("model") YwuWikiProjectEntity ywuWikiProjectEntity);

    void deleteYwuWikiProject(@Param("model") YwuWikiProjectEntity ywuWikiProjectEntity);

    int queryPageCount(@Param("model") YwuWikiProjectDto dto);

    List<YwuWikiProjectEntity> queryPageList(@Param("model") YwuWikiProjectDto dto);

    List<YwuWikiProjectEntity> queryAllProject(@Param("tenantId") String tenantId);

    List<YwuWikiProjectAndDocEntity> queryWikiDocByProjectIds(@Param("tenantId") String tenantId, @Param("list") ArrayList<String> projectIds);
}
